﻿
using ModelDto;
using System;
using System.Collections.Generic;
using System.Text;

namespace Common
{
    /// <summary>
    /// 微信小程序 辅助类
    /// </summary>
    public interface IWXAppletHelper
    {
        /// <summary>
        /// 微信小程序 授权登录
        /// 请求地址： https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
        /// 参数：
        /// appid string        小程序 appId
        /// secret string       小程序 appSecret
        /// js_code string      登录时获取的 code
        /// grant_type string   授权类型，此处只需填写 authorization_code
        /// </summary>
        WXAppletLoginResponse WXAppletLogin(string code);

        /// <summary>
        /// 微信小程序 获取Token GET
        /// 请求地址：https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
        /// 参数：
        /// grant_type string 填写 client_credential
        /// appid string 小程序唯一凭证，即 AppID，可在「微信公众平台 - 设置 - 开发设置」页中获得。（需要已经成为开发者，且帐号没有异常状态）
        /// secret string 小程序唯一凭证密钥，即 AppSecret，获取方式同 appid
        /// </summary>
        /// <returns></returns>
        string GetAccessToken();
        //WXAppletAccessTokenResponse GetAccessToken();

        /// <summary>
        /// 微信小程序 获取Token GET 实时的 备用吧
        /// 请求地址：https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
        /// 参数：
        /// grant_type string 填写 client_credential
        /// appid string 小程序唯一凭证，即 AppID，可在「微信公众平台 - 设置 - 开发设置」页中获得。（需要已经成为开发者，且帐号没有异常状态）
        /// secret string 小程序唯一凭证密钥，即 AppSecret，获取方式同 appid
        /// </summary>
        /// <returns></returns>
        string GetAccessTokenFresh();

        /// <summary>
        /// 获取手机号
        /// </summary>
        /// <param name="code"></param>
        /// <returns></returns>
        WXAppletGetPhoneNumberResponse WXAppletGetTel(string code);

    }
}
